home *** CD-ROM | disk | FTP | other *** search
- //----------------------------------------------------------------------------
- // Update.hpp - bcbdcc32 generated hdr (DO NOT EDIT) rev: 0
- // From: Update.pas
- //----------------------------------------------------------------------------
- #ifndef UpdateHPP
- #define UpdateHPP
- //----------------------------------------------------------------------------
- #include <TypInfo.hpp>
- #include <Classes.hpp>
- #include <SysUtils.hpp>
- #include <System.hpp>
- #pragma warn -par
- #pragma warn -hid
- #pragma warn -inl
-
- namespace Update
- {
- //-- type declarations -------------------------------------------------------
- enum TUpdateFilterState { usFilter, usReading, usWriting };
-
- class __declspec(delphiclass) TUpdateFiler;
- class __declspec(delphiclass) TUpdateObject;
- class __declspec(delphiclass) TUpdateManager;
- class __declspec(pascalimplementation) TUpdateObject : public System::TObject
- {
- typedef System::TObject inherited;
-
- private:
- TUpdateObject* FOwner;
- Classes::TPersistent* FObject;
- Classes::TPersistent* FAncestor;
- Classes::TComponent* FObjectOwner;
- Classes::TComponent* FAncestorOwner;
- Classes::TList* FPropList;
- Classes::TList* FChildList;
- TUpdateFiler* FUpdateFiler;
- bool FIsComponent;
- bool FIsCollection;
- bool FUpdateCollection;
- bool FUpdateOrder;
- int FOrder;
- Typinfo::TPropInfo *FPropInfo;
- bool FCompare;
- __fastcall TUpdateObject(TUpdateObject* AOwner, Classes::TPersistent* AObject, Classes::TPersistent*
- AAncestor, Typinfo::PPropInfo APropInfo, bool Compare);
- __fastcall virtual ~TUpdateObject(void);
- void __fastcall AddChild(Classes::TComponent* Component);
- bool __fastcall CanRevert(Classes::TPersistent* Instance, Typinfo::PPropInfo PropInfo, bool &Continue
- );
- Sysutils::TMethod __fastcall GetAncestorMethod(Typinfo::PPropInfo PropInfo);
- void * __fastcall GetAncestorPointer(void * Value);
- void * __fastcall GetAncestorReference(Typinfo::PPropInfo PropInfo);
- TUpdateObject* __fastcall FindChild(Classes::TComponent* Component);
- TUpdateObject* __fastcall FindChildProp(Typinfo::PPropInfo APropInfo);
- void __fastcall ComponentDelete(Classes::TComponent* AComponent);
- void __fastcall Filter(void);
- void __fastcall FilterOrder(void);
- bool __fastcall Revert(Classes::TPersistent* Instance, Typinfo::PPropInfo PropInfo);
- void __fastcall Update(TUpdateManager* UpdateManager);
- void __fastcall ValidateObjects(void);
- public:
- /* TObject.Create */ __fastcall TUpdateObject(void) : System::TObject() { }
-
- };
-
- class __declspec(pascalimplementation) TUpdateFiler : public Classes::TFiler
- {
- typedef Classes::TFiler inherited;
-
- private:
- Classes::TStringList* FPropertyList;
- TUpdateObject* FUpdateObject;
- Classes::TWriter* FWriter;
- Classes::TReader* FReader;
- bool FFiltered;
- TUpdateFilterState FState;
- System::AnsiString FPropName;
- bool FCompare;
- bool __fastcall Empty(void);
- void __fastcall Filter(void);
- void __fastcall FilterProp(const System::AnsiString Name, bool HasData);
- void __fastcall Update(void);
-
- public:
- __fastcall TUpdateFiler(TUpdateObject* AUpdateObject, bool ACompare);
- __fastcall virtual ~TUpdateFiler(void);
- virtual void __fastcall DefineProperty(const System::AnsiString Name, Classes::TReaderProc ReadData
- , Classes::TWriterProc WriteData, bool HasData);
- virtual void __fastcall DefineBinaryProperty(const System::AnsiString Name, Classes::TStreamProc ReadData
- , Classes::TStreamProc WriteData, bool HasData);
- virtual void __fastcall FlushBuffer(void);
- };
-
- enum TUpdateMode { umNone, umUpdate, umFilter };
-
- class __declspec(pascalimplementation) TUpdateManager : public System::TObject
- {
- typedef System::TObject inherited;
-
- private:
- TUpdateObject* FComponentUpdate;
- Classes::TList* FChildList;
- Classes::TComponent* FComponent;
- Classes::TComponent* FAncestor;
- TUpdateManager* FParent;
- TUpdateMode FMode;
- Classes::TList* FUpdateList;
- Classes::TNotifyEvent FOnUpdating;
- Classes::TNotifyEvent FOnUpdate;
- void __fastcall Filter(void);
- bool __fastcall GetHasDescendents(void);
- bool __fastcall GetIsDescendent(void);
- void __fastcall UpdateChildren(void);
- void __fastcall SetChildAncestor(Classes::TComponent* Child);
- void __fastcall Updating(Classes::TComponent* Component);
-
- public:
- __fastcall TUpdateManager(Classes::TComponent* AComponent, Classes::TComponent* AAncestor, TUpdateManager*
- AAncestorManager);
- __fastcall virtual ~TUpdateManager(void);
- bool __fastcall CanRevert(Classes::TPersistent* Instance, Typinfo::PPropInfo PropInfo);
- void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation);
- void __fastcall Modified(void);
- bool __fastcall NameExists(const System::AnsiString Name);
- void __fastcall Revert(Classes::TPersistent* Instance, Typinfo::PPropInfo PropInfo);
- void __fastcall Update(void);
- __property Classes::TNotifyEvent OnUpdating = {read=FOnUpdating, write=FOnUpdating};
- __property Classes::TNotifyEvent OnUpdate = {read=FOnUpdate, write=FOnUpdate};
- __property Classes::TComponent* Component = {read=FComponent, nodefault};
- __property Classes::TComponent* Ancestor = {read=FAncestor, nodefault};
- __property bool HasDescendents = {read=GetHasDescendents, nodefault};
- __property bool IsDescendent = {read=GetIsDescendent, nodefault};
- };
-
- //-- var, const, procedure ---------------------------------------------------
-
- } /* namespace Update */
-
- #pragma warn .par
- #pragma warn .hid
- #pragma warn .inl
-
- #if !defined(NO_IMPLICIT_NAMESPACE_USE)
- using namespace Update;
- #endif
- //-- end unit ----------------------------------------------------------------
- #endif // Update
-